/*******************************************************************************
 * Dreampalace
 *******************************************************************************
 * 
 * Dreampalace is a special dreamdiary which helps dreamers to understand their
 * dreams. You can find also many features in Dreampalace to learn and hold the
 * lucid state in your dreams.
 * 
 * *****************************************************************************
 *
 * Program	   : Dreampalace
 * Autor           : PRo (Peter Rogge)
 * Email           : rogge-peter@gmx.de
 * Homepage        : http://code.google.com/p/dreampalace
 * License	   : GNU General Public License 3.0
 * 
 *******************************************************************************
 * 
 * This file is part of the project Dreampalace. Dreampalace is free software:
 * you can redistribute it and/or modify it under the terms of the GNU General 
 * Public License as published by the Free Software Foundation in version 3 of
 * the License only.
 * 
 * Dreampalace is distributed in the hope that it will be useful, but WITHOUT 
 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
 * FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
 * details.
 * 
 * You should have received a copy of the GNU General Public License along with
 * Dreampalace. If not, see <http://www.gnu.org/licenses/>.
 * 
 * The Dreampalace project designates this particular file as subject to the
 * "Classpath" exception as provided by the Dreampalace project in the GPL 
 * Version 3 section of the License file that accompanied this code.
 * 
 *******************************************************************************
 */
package de.pro.dreampalace.file.api;

/**
 * 
 * @author Peter Rogge (PRo) <rogge-peter@gmx.de>
 */
public enum EFileTyp {
    ABOUT(
            "file-typ-about", // NOI18N
            "/de/pro/dreampalace/file/about/About.fxml"), // NOI18N
    DREAM("file-typ-dream"), // NOI18N
    EXERCISE("file-typ-exercise"), // NOI18N
    LINKS(
            "file-typ-links", // NOI18N
            "/de/pro/dreampalace/file/links/Links.fxml", // NOI18N
            -1967072800),
    LINKS_EDITOR(
            "file-typ-links-editor", // NOI18N
            "/de/pro/dreampalace/file/links/LinksEditor.fxml", // NOI18N
            -1967072801),
    NOTES_EDITOR(
            "file-typ-notes-editor", // NOI18N
            "/de/pro/dreampalace/file/notes/NotesEditor.fxml", // NOI18N
            -1967072810),
    STATISTIC("file-typ-statistic"), // NOI18N
    TIPOFTHENIGHT("file-typ-tipofthenight"); // NOI18N
    
    private long fileID = -1L;
    
    private String fileTyp = null;
    private String place = null;
    
    EFileTyp(final String fileTyp) {
        this(fileTyp, "");
    }
    
    EFileTyp(final String fileTyp, final long fileID) {
        this(fileTyp, "", fileID);
    }
    
    EFileTyp(final String fileTyp, final String place) {
        this(fileTyp, place, -1L);
    }
    
    EFileTyp(final String fileTyp, final String place, final long fileID) {
        this.fileTyp = fileTyp;
        this.place = place;
        this.fileID = fileID;
    }
    
    public boolean equals(EFileTyp fileTyp) {
        return this.toString().equals(fileTyp.toString());
    }
    
    public long getID() {
        return fileID;
    }
    
    public String getPlace() {
        return place;
    }

    @Override
    public String toString() {
        return fileTyp;
    }
}
